/*
 * Copyright 2011 Sebastian Maurer
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package erepublik.dto;

import java.util.List;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Company extends IDNameType {

	@XmlElementWrapper(name="employees")
	@XmlElement(name="employee")
	private List<Employee> employees;
	
	private Integer stock;
	
	@XmlElement(name="is-for-sale")
	private Boolean isForSale;
	
	private Integer customization;
	
	private IDNameType region;
	
	@XmlElement(name="raw-materials-in-stock")
	private Integer rawMaterialsInStock;
	
	@XmlElementWrapper(name="export-licenses")
	@XmlElement(name="export-license")
	private List<ExportLicense> exportLicenses;
	
	@XmlElementWrapper(name="job-offers")
	@XmlElement(name="job-offer")
	private List<JobOffer> jobOffers;
	
	private IDNameType industry;
	
	@XmlElement(name="customization-level")
	private Integer customizationLevel;
	
	private Country country;

	public List<Employee> getEmployees() {
		return employees;
	}

	public void setEmployees(List<Employee> employees) {
		this.employees = employees;
	}

	public Integer getStock() {
		return stock;
	}

	public void setStock(Integer stock) {
		this.stock = stock;
	}

	public Boolean getIsForSale() {
		return isForSale;
	}

	public void setIsForSale(Boolean isForSale) {
		this.isForSale = isForSale;
	}

	public Integer getCustomization() {
		return customization;
	}

	public void setCustomization(Integer customization) {
		this.customization = customization;
	}

	public IDNameType getRegion() {
		return region;
	}

	public void setRegion(IDNameType region) {
		this.region = region;
	}

	public Integer getRawMaterialsInStock() {
		return rawMaterialsInStock;
	}

	public void setRawMaterialsInStock(Integer rawMaterialsInStock) {
		this.rawMaterialsInStock = rawMaterialsInStock;
	}

	public List<ExportLicense> getExportLicenses() {
		return exportLicenses;
	}

	public void setExportLicenses(List<ExportLicense> exportLicenses) {
		this.exportLicenses = exportLicenses;
	}

	public List<JobOffer> getJobOffers() {
		return jobOffers;
	}

	public void setJobOffers(List<JobOffer> jobOffers) {
		this.jobOffers = jobOffers;
	}

	public IDNameType getIndustry() {
		return industry;
	}

	public void setIndustry(IDNameType industry) {
		this.industry = industry;
	}

	public Integer getCustomizationLevel() {
		return customizationLevel;
	}

	public void setCustomizationLevel(Integer customizationLevel) {
		this.customizationLevel = customizationLevel;
	}

	public Country getCountry() {
		return country;
	}

	public void setCountry(Country country) {
		this.country = country;
	}
	
}